/*
 *  Preenche um vetor com números aleatórios entre 0 e TAMANHO-1.
 *  Faz várias buscas e exibe a média dos custos para todas as
 *  buscas e para apenas as bem sucedidas.
 */

#include <stdio.h>
#include <stdlib.h>

#define TAMANHO 1000

int main () {
  
  int vetor[TAMANHO];
  int valor;
  int i, b, n;
  int encontrado;
  int media, n_sucesso, media_sucesso;

  for (i = 0; i < TAMANHO; i++)
    vetor[i] = random() % TAMANHO;

  printf("Número de buscas: ");
  scanf("%d", &n);

  media = 0;
  media_sucesso = 0;
  n_sucesso = 0;

  for (b = 0; b < n; b++) {
    i = 0;
    encontrado = 0; /*Falso*/
    valor = random() % TAMANHO;
    
    while (i < TAMANHO && !encontrado) {
      if (vetor[i] == valor) {
	encontrado = 1; /*Verdadeiro*/
      } else {
	i++;
      }
    }
    media += i;
    
    if (encontrado) {
      printf ("Valor %d encontrado na posicao %d\n", vetor[i], i);
      media_sucesso += i;
      n_sucesso++;
    } else {
      printf ("Valor %d não encontrado\n", valor);
    }
  }

  printf("Média do custo das buscas: %d\n", media/n);
  printf("Média do custo das buscas com sucesso: %d\n", 
	 media_sucesso/n_sucesso);
  
  return 0;
}
